﻿// 3446. 整数奇偶排序.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//

#include <iostream>
#include <algorithm>

using namespace std;
/*
https://www.acwing.com/problem/content/3449/

输入 10个整数，彼此以空格分隔。

重新排序以后输出(也按空格分隔)，要求:

先输出其中的奇数,并按从大到小排列；然后输出其中的偶数,并按从小到大排列。
输入格式
任意排序的 10 个整数，彼此以空格分隔。

输出格式
按照要求排序后输出，整数之间由空格分隔。

数据范围
输入整数取值范围 [0,100]。

输入样例：
4 7 3 13 11 12 0 47 34 98
输出样例：
47 13 11 7 3 0 4 12 34 98
*/

int a[10];

bool cmp(int a, int b) {
	if (a % 2 == 1 && b % 2 == 0) return true;
	if (a % 2 == 1 && b % 2 == 1) {
		return a > b;
	}
	if (a % 2 == 0 && b % 2 == 0) {
		return a < b;
	}

	return false;
}

int main()
{
	for (int i = 0; i < 10; i++) {
		cin >> a[i];
	}

	sort(a, a + 10, cmp);

	for (int i = 0; i < 10; i++) {
		cout << a[i] << " ";
	}

	return 0;
}
 